home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 098 / fft12.arc / GETDATA2.PAS < prev   
Pascal/Delphi Source File  |  1985-04-29  |  2KB  |  57 lines

  1. program getdata;
  2. type
  3.    data      =
  4.      record
  5.        re,im   :real
  6.      end;
  7.    range = array[1..256] of data;
  8. var
  9.    a,index   :integer;
  10.    xk        :range;
  11.  
  12.  PROCEDURE WRITEDATA(VAR D: RANGE; VAR A: INTEGER);
  13.  
  14.     TYPE  DATA= RECORD
  15.                 W,Z : REAL
  16.                END;
  17.     VAR  INDEX :INTEGER;
  18.          XY: ARRAY[1..256] OF DATA;
  19.          DATAFILE: FILE OF DATA;
  20.          FILENAME: STRING[16];
  21.  
  22.     BEGIN
  23.        WRITE('Enter Name of Output File w/o Extension :  '); READLN(FILENAME);
  24.        FILENAME:= FILENAME+'.DAT';
  25.        ASSIGN(DATAFILE,FILENAME);
  26.        REWRITE(DATAFILE);
  27.        FOR INDEX:=1 TO A DO
  28.          BEGIN
  29.             WITH XY[INDEX] DO
  30.                BEGIN
  31.                   W:=D[INDEX].RE;
  32.                   Z:=D[INDEX].IM
  33.                END;
  34.             WRITE(DATAFILE,XY[INDEX])
  35.          END;
  36.        CLOSE(DATAFILE)
  37.     END;
  38.  
  39. begin
  40.      clrscr;
  41.      gotoxy(19,1);writeln('Program to Enter Complex Pairs into a File');
  42.      writeln;writeln;
  43.      writeln('If you are planning to use this with the FFT program, the');
  44.      writeln('number of complex data points must be a power of 2!');
  45.      writeln;
  46.      write('Enter number of complex data points <=256 : ');readln(a);
  47.      gotoxy(19,12);writeln('--------------* Input Data *--------------');writeln;
  48.      for index:=1 to a do begin
  49.          write('real(',index,') ===> : ');readln(xk[index].re);
  50.          write('imag(',index,') ===> : ');readln(xk[index].im);
  51.          writeln;
  52.      end;
  53.      writedata(xk,a);
  54.      writeln;writeln;
  55.      for index:=1 to a do
  56.          writeln('real(',index,')=',xk[index].re,'    imaginary(',index,')=',xk[index].im);
  57. end.